using System;
using System.Collections.Generic;
using System.Text;

namespace Yorrick.FlickrMetadataSynchr.Data
{
   /// <summary>
   /// Class to hold the metadata of a matched picture pair: local and Flickr.
   /// </summary>
   internal class PicturePair
   {
      #region Private fields
      /// <summary>
      /// The local metadata.
      /// </summary>
      LocalPictureMetadata _localMetadata;

      /// <summary>
      /// The Flickr metadata.
      /// </summary>
      FlickrPictureMetadata _flickrMetadata;

      /// <summary>
      /// The direction in which to sync metadata.
      /// </summary>
      SyncDirection _syncDirection;
      #endregion

      #region Public properties.
      /// <summary>
      /// Gets the local metadata.
      /// </summary>
      public LocalPictureMetadata LocalMetadata
      {
         get
         {
            return _localMetadata;
         }
      }

      /// <summary>
      /// Gets the Flickr metadata.
      /// </summary>
      public FlickrPictureMetadata FlickrMetadata
      {
         get
         {
            return _flickrMetadata;
         }
      }

      /// <summary>
      /// Gets or sets the direction in which to sync metadata.
      /// </summary>
      public SyncDirection SyncDirection
      {
         get
         {
            return _syncDirection;
         }
         set
         {
            _syncDirection = value;
         }
      }
      #endregion

      #region Constructor
      /// <summary>
      /// Constructs a picture pair.
      /// </summary>
      /// <param name="localMetadata">The local metadata.</param>
      /// <param name="flickrMetadata">The Flickr metadata.</param>
      /// <param name="syncDirection">The direction in which to sync metadata.</param>
      public PicturePair(LocalPictureMetadata localMetadata, FlickrPictureMetadata flickrMetadata, SyncDirection syncDirection)
      {
         _localMetadata = localMetadata;
         _flickrMetadata = flickrMetadata;
         _syncDirection = syncDirection;
      }
      #endregion
   }
}
